Distributed Dynamic Virtual Reality in Wave
نویسندگان
چکیده
The paper considers the use of the WAVE model and system oriented on parallel processing of dynamic knowledge networks as a universal modelling tool for distributed interactive simulation of complex systems. The main emphasis is on the application of WAVE for distributed 3D visualisation of simulation results in computer networks by its integration with common rendering techniques. A brief review and comment on the technologies currently available for producing 3D virtual worlds on the Internet is made, and a new approach for creating distributed virtual worlds is proposed where the VR technologies are put on top of the parallel and distributed WAVE system processing knowledge networks in a mobile mode, which can directly support dynamic scene graphs. Such an integration may provide fully dynamic, distributed and multiuser virtual worlds, as part of complex distributed simulation systems. The application of this distributed graph processing technology for the creation of dynamic terrain databases is also shown, demonstrating seamless distribution and scalability within computer networks. VIRTUAL REALITY MODELLING LANGUAGES Over the last two years, many people have been interested in extending the World Wide Web (WWW) paradigm to provide a representation of three-dimensional data with hyperlinks, fuelled by the rapid increase in popularity and availability of computer generated "virtual reality" (VR). This led to the development of Virtual Reality Modelling Language, or VRML. Available Technologies For Networked 3D Scenes Outlined below are descriptions of several popular systems used for the creation of 3D VR scenes. A brief description of each language/system is given for comparison purposes more detailed information can be obtained from the references supplied. There are many more different proprietary systems available, as the industry for virtual reality systems is burgeoning. Open Inventor and OpenFlight are popular examples of such standards, VRML 1.0 has been the standard for Internet 3D for the past year, and the other systems below are proposals for the extension of VRML 1.0 to VRML 2.0. The requirements for a networked (Internet) VR system differ from those of a standalone or dedicated VR system, as the bandwidth available for data transmission is generally lower, and the creation of content should be as simple as possible to make the system accessible to a wide number of users. VRML 1.0 The current VRML 1.0 specification details a text language for describing (static) three dimensional scenes. It was designed to be platform-independent, extensible, and able to be used over low bandwidth connections. It consists of a subset of Silicon Graphics’ Open Inventor file format, but has provision for hyperlinks, in the same way that HTML does. This was designed to be a starting point from which people could develop more sophisticated modelling systems to create the goal of, to quote the VRML 1.0 specification, "a universal description language for multi-participant simulations". [VRML 1995] Open Inventor Open Inventor is an ASCII file format and programming interface, developed by Silicon Graphics, for describing "scenes" of objects. Objects may be many different things : 3D geometry, MIDI data, JPEG images, etc. A set of nodes useful for 3D graphics, such as geometric primitives and polygonal shapes, are specified by Open Inventor. The objects in a scene are organised in a "scene graph", which gives a hierarchical ordering to the scene. It is this system, which is large and quite generalised, that became the basis for VRML 1.0. VRML consists of a subset of Open Inventor, including only the most commonly used and necessary features. [Overview 1995] OpenFlight OpenFlight Scene Description Language is a commercial binary data format, developed by MultiGen Inc. to store information about three-dimensional scenarios. It is very comprehensive, designed to support both simple and sophisticated real-time systems, and caters for many of the needs of a VR-type application. [OpenFlight 1996] ActiveVRML ActiveVRML was designed by Microsoft to be a successor to VRML 1.0. Rather than just describing static 3D scenes, ActiveVRML was designed for the construction of interactive, 3D multimedia worlds. A key difference from the languages already mentioned is that all ActiveVRML objects are implicitly time-varying. Objects may have behaviours attached to them, and may switch behaviours on cues to provide interactivity. Rather than being a just a scene description file format, ActiveVRML is more like a functional programming language. Active scenes may be built up in a compositional manner, using objects or scenes previously defined, including software components written in languages such as Java and C++. The possibility of mul t iuser worlds is to be addressed in the future . [ActiveVRML 1995] Moving Worlds Moving Worlds was a proposal for, and has now been accepted as, the VRML 2.0 specification, supported by several organisations. Based on the VRML 1.0 file format, it adds functionality to allow interactive animated 3D scenes. Scenes are still described as a tree-like scene graph structure, with two main types of node : grouping nodes and leaf nodes. Leaf nodes describe the objects comprising a scene, such as shapes, scripts, images, sounds, etc. A grouping node switch provides for alternative behaviours of parts of a scene. Provision is made for time, events, and behaviours, which can be defined by scripts. [Moving Worlds 1996a,b] Dynamic Worlds (GMD) Another proposal for VRML 2.0, Dynamic Worlds also adds events/behaviour capability and builds on the VRML 1.0 specification. The structure of the scene graph may be modified using Scene Graph Events, which allow adding, copying, moving and removal of nodes. Some thought has been given to creating multiuser worlds, with the inclusion of shared triggers and synchronised behaviour engines. [Dynamic Worlds 1995] ADDING DYNAMICS TO 3D SCENES As it stands, VRML 1.0 is simply a file format for describing static scenes, with the ability to have different parts of the scene taken from different resources on the network. There have been several independent efforts in developing a system to form the basis of the VRML 2.0 specification (see previous section), all concerned with the adding of "dynamics" to a scene. After consideration of the various proposals for VRML 2.0, Moving Worlds is the one that was chosen. All proposals, however, seem to have the same thing in common; they are merely providing a way of describing animated scenes containing objects with behaviors attached to them. Such a language will obviously be useful in presenting a "Web Surfer" with a three-dimensional, intuitive world which he/she can interact with, but for the creation of distributed multi-user virtual realities, further sophistication is required. In the case of a simulation, or a sophisticated VR system where realism is important, interactions with the scenery and any objects contained within should be possible. With the currently available systems for creating virtual environments, this is largely not possible. Scenes are built around a static structure, and movement and ‘interactivity’ are then designed in. The method in which these dynamics are added to a scene varies from system to system; for example in Microsofts’ ActiveVRML, a functional programming paradigm is used, where objects with simple behaviours may be composed to form larger, animating systems, whereas VRML 2.0 connects active scene graph nodes (behaviours of which may be defined by scripts or switch nodes) using an object-oriented, message passing system. Both these approaches cater for the necessary addition of behaviours and stimulus-response engines to objects in a scene, but the level of interaction which a VR participant may have with such an environment has been both predefined and limited at the design stage of the scenes. To use a perverse example, say a bulldozer entered a virtual village populated by human avatars. Using current paradigms, if this bulldozer object had not been foreseen and allowed for at the design stage of the virtual village, it would only have the same level of interactions allowed to the human objects, whereas to be realistic, it should be allowed to destroy walls and the like. In other words, to have the ability to modify objects which had no capability of modification built into them. Large-Scale Changes To Scene Structure This idea brings us to consider interactions with the actual scenery and structure of the virtual environment. This is obviously not a requirement for all applications: a 3D web site would not benefit from this at all, as it would usually be for displaying data `published ́ by its author, who would like it to remain as intended. However, for some VR applications, in particular military simulations, changes to the fabric of the simulated environment may be desirable, even necessary to achieve realism. Using traditional scene representations, large-scale modifications to the scene structure are not possible unless allowed for at the design stage. By representing a scene as a flexible data structure which allowed such manipulations to be made during runtime, we could model such things as bomb damage, vehicle damage, earthquakes, etc. Semantic virtual worlds in WAVE For all the currently available methods, a scene is designed at the outset, and retains predominantly the same structure throughout its use. For simulation of complex systems such as battlefields with rapidly changing situations and highly dynamic terrain, the VR scenes must also be very dynamic themselves, and the associated scene graphs should be able to change and evolve at runtime. To provide the necessary scene dynamics we propose here an integration of the VR techniques with the distributed WAVE system creating and processing dynamic graphs [Sapaty and Borst 1994]. The WAVE technology allows information to be stored and manipulated as a spatial graph of arbitrary structure. These graphs, or Knowledge Networks (KN), consist of named nodes and directional links. WAVE has proved to be rather efficient for solving a variety of classes of problems in open computer networks, such as distributed interactive simulation and management of large systems. A KN may have any information (including procedures) associated with its nodes and links and can be treated as a declarative semantic network or a network of active processes, with any combination of both possible. The KN topology may be arbitrary, while changing and evolving during runtime. Such flexibility is achieved by a program flow, rather than traditional data flow, mode of operation where special recursive programs called waves self-spread in a computer network and incrementally process distributed data in a spatial pattern-matching mode. This distributed processing may be performed in a parallel mode and without any centralised resources, as operations, control, and local data can easily migrate in a multiprocessor environment. The WAVE model provides a universal facility for creating virtual worlds on an intelligent, semantic level with embedded mechanisms of self-organization and interaction with multiple users. These worlds may be composed of parts represented by KN nodes with relations between them as KN links. The nodes may reflect physical substances, like parts of terrain, or logical ones, like concepts or classes. A KN may reflect a discrete general structuring of the modelled worlds whereas its nodes may be further detailed as, say, continuous models. Such semantic worlds can be easily supported and processed by a distributed WAVE interpreter executing multiple mobile waves. This processing may include real time simulation with entities represented by waves moving through a distributed terrain (as a KN network), or be a sophisticated inference in a network of facts which is navigated by waves keeping a goal structure. ADDING DYNAMICS TO VRML SCENES To provide full dynamics, the provision of scenes has been put under the control of the WAVE system. The scene graphs are represented in WAVE as a KN, and may be generated or inferred dynamically on a semantic level and simultaneously rendered by traditional Inventor-like visualisation techniques. This permits a large scene graph to be distributed over several computers, with each participant being able to build a VRML file according to his/her "view" of the scene. As links between nodes may be modified by the roaming WAVE programs, so large-scale changes of the overall scene structure may be made dynamically at a semantic level. Parameters held in nodes may Figure 1 Initial Scene Graph and Scene Figure 3 Stage Three Scene Graph Figure 2 Stage Two Scene Graph also be changed in this way, making animations possible at any desired level of complexity. Higher-level distributed control can be made over VRML scenes using these techniques, allowing distributed virtual reality environments to be created with great flexibility. The data generated from the WAVE system does not necessarily need to be in VRML format: other common formats could be generated, for example Open Inventor or OpenFlight databases, for use in established systems. Modifying And Synthesizing VRML Scenes In this example, a scene structure is created within the WAVE KN to resemble a VRML scene, modified, and finally shared between two computers. In parallel, a WAVE strand navigates the KN, following the links according to simple rules. As it does so, it creates VRML format files, and passes them to a browser for rendering. The nodes of the scene graph are taken from the content of the KN nodes, and the tree structure is determined by the KN links. This results in an animated VRML scene, comprised of static objects. Fp1=‘computer1.wave.com’. Fp2=‘computer2.wave.com’. Fsynth= ‘F1=‘vrweb -remote’.F2=‘echo "#VRML V1.0 ascii" >’. F4=‘echo "’.F5=‘" >>’.F6=‘&’. Fn=‘Fc+1.AS((Fc#.!3),).N&x.Fc#,Fn’. F=‘SQ( OS( (Fc=.N=.Fn.F), (p#.Ft=C.@#P.N=Ft) ), (Fr=C.Fr&‘{’.Fr&N.Fr&‘}’.Fr%‘ ’.Ft=L.Ft&@.Ft&Fr.@#P.N:Ft) )’. RP( SQ( (N=x.#.F.!3), ).FF=F2.FF&F3.FF%‘ ’.?FF. FF=F4.FF&N.FF&F5.FF&F3.FF%‘ ’.?FF. FF=F1.FF&F3.FF&F6.FF%‘ ’.?FF.4?sleep)’. Fan= ‘RP(N1=C.N1|‘ ’.Nh=N1.Nh:1.N1:1;@.N1+0;0;0;1.Nh&N1.Nh%‘
منابع مشابه
The Effect of 8 Weeks Virtual Reality Training on Static and Dynamic Balance and Performance in Male Athletes With Functional Ankle Instability
Introduction: The purpose of this study is to investigate the effect of 8 weeks virtual reality training on static and dynamic balance and performance of in male athletes with functional ankle instability Research Methodology: For this research, 30 volleyball, basketball, football and handball players ranged from 18 to 25 years were selected purposefully from Tehran province league male a...
متن کاملInvestigating the Effect of Virtual Reality Techniques on Balance of the Elderly
Balance is one of the determining indicators of independence in the elderly. Technology has the potential to improve the quality of life, health and functional abilities of the disabled elderly. The use of virtual reality techniques is one of the novel methods of using technology for improving the quality of life and balance of the elderly by fully participating elderly in this direction. The p...
متن کاملتأثیر تمرینات تعادلی مبتنی بر واقعیت مجازی بر روی تعادل ایستا، پویا و عملکردی سالمندان
Introduction and purpose: Balance disorder and falling is one of the most important consequences of aging, worrying consequences that entails, including bone fractures .The purpose of this study was to determine the effect of eight weeks virtual reality-based balance training on the balance of elderly men. Materials and Methods: The present study was a semi-experimental and applied to 26 elder...
متن کاملThe Physical World as a Virtual Reality Part II: Simulating Space and Time
This paper explores the idea that the space-time of a virtual reality could appear to those within it as our space-time does to us. The likely processing needed to do this includes a dynamic information base, a discrete underlying grid and distributed processing. The simulation could present on the surface of a fourdimensional hyper-sphere, where an information processing grid calculates space,...
متن کاملInvestigating the efficacy of brain training by using virtual reality and real shooting on the shooting skills of students of a military university
Background and Aim: High quality, fast-paced and cost-effective training of novice military personnel is a major concern in most armed forces around the world. Hence, implementing psycho-technological findings is important in the armed forces. This study aimed to investigate and compare the efficacy of brain-training (neurofeedback) and virtual-reality training through the use of actual and vir...
متن کاملScene Synchronization for Real-Time Interaction in Distributed Mixed Reality and Virtual Reality Environments
Advances in computer networks and rendering systems facilitate the creation of distributed collaborative environments in which the distribution of information at remote locations allows efficient communication. One of the challenges in networked virtual environments is maintaining a consistent view of the shared state in the presence of inevitable network latency and jitter. A consistent view i...
متن کامل